#ifndef EVALUATION_H
#define EVALUATION_H

#pragma once

#include "Classify.h"
#include "OpLib.h"

#include <assert.h>
#include <math.h>
#include <stdio.h>
#include <time.h>


#include <stdio.h>
#include "opencv\cv.h"


namespace Eval{

	using namespace std;
	using namespace OpLib;
	using namespace cv;

	/*! Struct containing the actual truth (Person yes or no?) and the output
	* from the classifier
	*/
	struct result {
		bool isPerson;
		double score;
	};

	
	vector<Eval::result> createQuantitiveValues(Classify::Classifier classy, string filepath_pos, string filepath_neg);
	double* calculatePerformance(double threshhold, vector<Eval::result> values);
	void plotQuantitative(vector<Eval::result> values);
	bool compareResults(const result &a, const result &b);
	vector<Eval::result> createTestVector();
	bool checkOverlap(cv::Rect rect_1, cv::Rect rect_2, double overlap_border);
}


#endif